Re: ORDER BY and LIMIT not propagated on inherited
От | Jens-Wolfhard Schicke |
---|---|
Тема | Re: ORDER BY and LIMIT not propagated on inherited |
Дата | |
Msg-id | 6A72374A62C8721E4E414937@[192.168.1.72] обсуждение исходный текст |
Ответ на | Re: ORDER BY and LIMIT not propagated on inherited (Matteo Beccati <php@beccati.com>) |
Список | pgsql-performance |
>>> The correct strategy IMHO would >>> be applying the order by and limit for each child table (which results >>> in an index scan, if possible), appending, then finally sorting a bunch >>> of rows, and limiting again. >> >> This would be a win in some cases, and in many others a loss (ie, wasted >> sort steps). The hard part is determining when to apply it. > > I don't actually know how many smaller separate sorts compare to a single > big sort, but I guess the difference wouldn't be so big if the LIMIT is > low. Add to this that you don't need to append the whole rowsets, but > just smaller ones. I think if you have a bunch of sorted thingies, you'd perform exactly one merge step and be done, should be possible to do that in O(child_tables * rows)... Mit freundlichem Gruß Jens Schicke -- Jens Schicke j.schicke@asco.de asco GmbH http://www.asco.de Mittelweg 7 Tel 0531/3906-127 38106 Braunschweig Fax 0531/3906-400
В списке pgsql-performance по дате отправления: